package com.scs.application.modules.base.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import com.scs.application.core.entity.DataEntity;
import com.scs.application.modules.upgrade.db.annotation.EntityClassAnnotation;
import com.scs.application.modules.upgrade.db.annotation.EntityFieldAnnotation;
import com.scs.application.modules.upgrade.db.enums.EntityFieldType;
import lombok.Data;
import lombok.experimental.Accessors;

/**
 * <p>
 *
 * </p>
 */
@Data
@Accessors(chain = true)
@EntityClassAnnotation(remark = "包模板明细表")
@TableName("base_pack_templet_item")
public class PackTempletItem extends DataEntity {

    @EntityFieldAnnotation(
            text = "=base_pack_templet.id",
            type = EntityFieldType.LONG,
            length = "",
            not_null = true,
            default_value = "",
            comment = ""
    )
    private String packTempletId;

    @EntityFieldAnnotation(
            text = "耗材id",
            type = EntityFieldType.LONG,
            length = "",
            not_null = true,
            default_value = "",
            comment = ""
    )
    private String matrId;

    @EntityFieldAnnotation(
            text = "耗材名称",
            length = "200",
            not_null = false,
            default_value = "",
            comment = ""
    )
    private String matrName;

    @EntityFieldAnnotation(
            text = "品名助记码",
            length = "100",
            not_null = false,
            default_value = "",
            comment = "品名助记码"
    )
    private String matrNamePy;


    @EntityFieldAnnotation(
            text = "包装单位",
            length = "10",
            not_null = false,
            default_value = "",
            comment = ""
    )
    private String packageUnit;

    @EntityFieldAnnotation(
            text = "包装数量",
            length = "",
            not_null = false,
            default_value = "",
            comment = ""
    )
    private Double packageQty;

    @EntityFieldAnnotation(
            text = "单品单位",
            length = "10",
            not_null = false,
            default_value = "",
            comment = ""
    )
    private String skuUnit;

    @EntityFieldAnnotation(
            text = "单品数量",
            length = "",
            not_null = false,
            default_value = "",
            comment = ""
    )
    private Double skuQty;

    @EntityFieldAnnotation(
            text = "单品单价",
            not_null = false,
            default_value = "",
            comment = "单品单价"
    )
    private Double skuPrice;

    @EntityFieldAnnotation(
            text = "供应商id",
            type = EntityFieldType.LONG,
            length = "",
            not_null = false,
            default_value = "",
            comment = ""
    )
    private String supplierId;

    @EntityFieldAnnotation(
            text = "供应商名称",
            length = "50",
            not_null = false,
            default_value = "",
            comment = ""
    )
    private String supplierName;

    @EntityFieldAnnotation(
            text = "耗材品规",
            length = "100",
            not_null = false,
            default_value = "",
            comment = ""
    )
    private String matrSpec;

    @EntityFieldAnnotation(
            text = "厂商id",
            type = EntityFieldType.LONG,
            length = "",
            not_null = false,
            default_value = "",
            comment = ""
    )
    private String mfgId;

    @EntityFieldAnnotation(
            text = "厂商名称",
            length = "100",
            not_null = false,
            default_value = "",
            comment = ""
    )
    private String mfgName;

    @EntityFieldAnnotation(
            text = "寄售标识",
            length = "",
            not_null = false,
            default_value = "",
            comment = ""
    )
    private Integer flagConsignment;

    @EntityFieldAnnotation(
            text = "一物一码标识",
            length = "",
            not_null = false,
            default_value = "",
            comment = ""
    )
    private Integer flagOmoc;

    @EntityFieldAnnotation(
            text = "金额",
            length = "",
            not_null = false,
            default_value = "",
            comment = ""
    )
    private Double amount;

    @EntityFieldAnnotation(
            text = "注册证号",
            length = "",
            not_null = false,
            default_value = "",
            comment = ""
    )
    private String certificateNo;

    @EntityFieldAnnotation(
            text = "包装比率",
            type = EntityFieldType.DOUBLE,
            not_null = false,
            default_value = "",
            comment = ""
    )
    private Double packageRate;

    @EntityFieldAnnotation(
            text = "是主耗材",
            length = "",
            not_null = false,
            default_value = "0",
            comment = "同一包下面只允许一个"
    )
    private Boolean flagMain;

    @EntityFieldAnnotation(
            text = "耗材型号",
            length = "100",
            not_null = false,
            default_value = "",
            comment = "耗材型号"
    )
    private String matrModel;

    @EntityFieldAnnotation(
            text = "存储温度",
            not_null = false,
            length = "30",
            default_value = "",
            comment = "取自数据字典：matr_temperature.value"
    )
    private String temperature;

    @EntityFieldAnnotation(
            text = "人份",
            not_null = false,
            default_value = "0",
            comment = "人份"
    )
    private Double personPortion;

}
